
import 'package:flutter/material.dart';

import '../pages/info_click_cut.dart' as click_pice;


Map routes = {
  // routes 注册命名路由表，可以通过这个路由的key进行跳转到不同的value页面
//  "/click": (context) => click_pice.Basewhidget(),
  "/click": (context, {arguments}) => click_pice.Basewhidget(arguments: arguments),

};

// 这里的代码是固定的，不用多做改变
var onGenerateRoute = (settings) {     // 接收的参数中有路由跳转的名字，
//如在 Navigator.pushNamed(context, "/search", arguments: {"id": 10}); 中的/search
  // 监听路由跳转
  // ignore: missing_return
  String name = settings.name;  // 获取路由跳转名字
  Function pageContentBuilder = routes[name]; // 获取routes 中路由处理函数
  if (pageContentBuilder != null) {
    // 判断要跳转的路由是否有对应的处理函数
    if (settings.arguments != null) {
      // 判断是否有要传递的值
      final Route route = MaterialPageRoute(
        // 创建一个Route 变量，
          builder: (context) =>
          // 将要传递的数据放到这个对象上
          pageContentBuilder(context, arguments: settings.arguments));
      return route;
    } else {
      // 没有要传递的数据
      final Route route =
      MaterialPageRoute(builder: (context) => pageContentBuilder(context));
      return route;
    }
  }
};
